// import { fileType } from './enums.js'
// import store from '@/store/index.js'
// import globalEvents from '@/utils/globalEvents.js'
// import { loginWebVC } from '@/api/user.js'

/**
 * 扫描条码
 *
 */
export const scanInstall = (emits: (event: 'scan', ...args: any[]) => void): void => {
  uni.scanCode({
    complete: e => {},
    success: e => {
      // 在本组件内处理的各种情况：
      emits('scan', e)

      // 其它
      // that.$emit('scan', e)
      // store
      //   .dispatch('user/checkLoginValid')
      //   .then(res => {
      //     if (e.result.indexOf('temp-user') === 0) {
      //       // 扫码登录，判断登录有效性，有可能是在未登录时扫码
      //       // #ifdef MP-WEIXIN
      //       let key = e.result
      //       loginWebVC({
      //         key,
      //         value: store.state.user.WX_USER_OPENID,
      //         expire: 60,
      //       })
      //         .then(res => {
      //           console.log(res)
      //           uni.showToast({
      //             title: '已扫码登录',
      //           })
      //         })
      //         .catch(err => {
      //           console.log(err)
      //         })
      //       // #endif
      //     } else {
      //       // 其它
      //       that.$emit('scan', e)
      //       globalEvents.viewSetupImage(e)
      //     }
      //   })
      //   .catch(err => {
      //     console.log(err)
      //     uni.navigateTo({
      //       url: '/pages/login/password',
      //     })
      //   })
    },
    fail: e => {
      console.log(e)
    },
  })
}
// /**
//  * 通过文件名获取文件类型
//  * @param {String} fileName
//  * @returns {String} 文件类型，枚举值
//  */
// export function getFileTypeByName(fileName) {
//   let type
//   let lastIndex = fileName.lastIndexOf('.')
//   if (lastIndex < 0) return '无效文件名'
//   let suffix = fileName.substring(lastIndex + 1)
//   if (/^(image|png|jpg|jpeg|gif|bmp)$/gi.test(suffix)) {
//     // 图片
//     type = fileType.FILE_IMAGE
//   } else if (/^(document|doc|docx|pdf|txt|plain|xls|ppt|wps|md|json|xlsx|xls)$/gi.test(suffix)) {
//     // 文档
//     type = fileType.FILE_DOCUMENT
//   } else if (/^(media|wav|mid|mp3|aif|vqf|avi|mp4|dat)$/gi.test(suffix)) {
//     // 媒体
//     type = fileType.FILE_MEDIA
//   } else {
//     //其它未知文件类型
//     type = fileType.FILE_UNKNOWN
//   }
//   return type
// }

// /**
//  * 通过类型获取对应文件类型的图标
//  * @param {String||Number} type
//  * @returns {String} 文件地址
//  */
// export function getfileIconByType(type) {
//   type = Number(type)
//   let icon
//   switch (type) {
//     case fileType.FILE_IMAGE:
//       icon =
//         'cloud://vc-cloud-func-6gdelr660a5f430c.7663-vc-cloud-func-6gdelr660a5f430c-1307568389/img/icon_file_image.png' //require('@/static/img/icon_file_image.png')
//       break
//     case fileType.FILE_DOCUMENT:
//       icon =
//         'cloud://vc-cloud-func-6gdelr660a5f430c.7663-vc-cloud-func-6gdelr660a5f430c-1307568389/img/icon_file_doc.png' //require('@/static/img/icon_file_doc.png')
//       break
//     case fileType.FILE_MEDIA:
//       icon =
//         'cloud://vc-cloud-func-6gdelr660a5f430c.7663-vc-cloud-func-6gdelr660a5f430c-1307568389/img/icon_file_media.png' //require('@/static/img/icon_file_media.png')
//       break
//     case fileType.FILE_UNKNOWN:
//       icon =
//         'cloud://vc-cloud-func-6gdelr660a5f430c.7663-vc-cloud-func-6gdelr660a5f430c-1307568389/img/icon_file_unknown.png' //require('@/static/img/icon_file_unknown.png')
//       break
//     default:
//       icon =
//         'cloud://vc-cloud-func-6gdelr660a5f430c.7663-vc-cloud-func-6gdelr660a5f430c-1307568389/img/icon_file_unknown.png' //require('@/static/img/icon_file_unknown.png')
//       break
//   }
//   return icon
// }

// //通过文件名获取图标
// export function getFileIconByName(fileName) {
//   return getfileIconByType(getFileTypeByName(fileName))
// }

// /**
//  * @description: 格式化时间
//  * @param {*} time
//  * @return {*}
//  */
// export const formatDate = time => {
//   if (time === null) return ''
//   const date = new Date(time)
//   // const getTwoDigit = num => (num < 10 ? `0${num}` : num);
//   const getTwoDigit = num => `0${num}`.substring(String(num).length - 1)
//   const [Y, M, D] = [date.getFullYear(), getTwoDigit(date.getMonth() + 1), getTwoDigit(date.getDate())]
//   return `${Y}-${M}-${D}`
// }

// /**
//  * @description 格式化日期-时间
//  * @param {Object,String} time  日期+时间
//  * @return {String} 年-月-日-时-分-秒
//  */
// export const formatDateTime = (time, concatStr = ' ') => {
//   if (time === null) return ''
//   const date = new Date(time)
//   // const getTwoDigit = num => (num < 10 ? `0${num}` : num);
//   const getTwoDigit = num => `0${num}`.substring(String(num).length - 1)
//   const [Y, M, D, h, m, s] = [
//     date.getFullYear(),
//     getTwoDigit(date.getMonth() + 1),
//     getTwoDigit(date.getDate()),
//     getTwoDigit(date.getHours()),
//     getTwoDigit(date.getMinutes()),
//     getTwoDigit(date.getSeconds()),
//   ]
//   return `${Y}-${M}-${D}${concatStr}${h}:${m}:${s}`
// }

// /**
//  * 千分位数值显示
//  * @param {String|Number} val 数值
//  * @param {Number} digita 小数位长度
//  */
// export const displayByComma = (val, digit = 2) => {
//   if (val === Infinity) return 'Infinity'
//   if (isNaN(Number(val))) return '0'
//   val = parseFloat(val) || 0
//   val = parseFloat((val + '').replace(/[^\d.-]/g, '')).toFixed(digit) + ''
//   var l = val.split('.')[0].split('').reverse(),
//     r = val.split('.')[1],
//     t = ''
//   for (let i = 0; i < l.length; i++) {
//     t += l[i] + ((i + 1) % 3 == 0 && i + 1 != l.length ? ',' : '')
//   }
//   let res = t.split('').reverse().join('') + '.' + r
//   // 去掉多余的0
//   if (res.includes('.')) {
//     let arr = res.split('')
//     for (let i = arr.length - 1; i >= 0; i--) {
//       if (arr[i] === '0' && i === arr.length - 1) arr.splice(i, 1)
//     }
//     if (arr.indexOf('.') === arr.length - 1) arr.splice(-1) // 去掉最后的 .
//     res = arr.join('')
//   }
//   return res
// }

// /**
//  * 数据集数据处理
//  * @param {Object} data 数据集返回的结果
//  */
// export const dealDataSetData = (data = {}) => {
//   const columns = []
//   const fields = []
//   const list = []
//   if (data) {
//     const { Fields, Values, HeaderFields, HeaderValues } = data
//     if (Fields && Values && HeaderFields && HeaderValues) {
//       const title0Index = HeaderFields.findIndex(field => field === 'TITLE0')
//       const title1Index = HeaderFields.findIndex(field => field === 'TITLE1')
//       const title2Index = HeaderFields.findIndex(field => field === 'TITLE2')
//       const fieldIndex = HeaderFields.findIndex(field => field === 'FIELD')
//       const fieldsIndex = []
//       HeaderValues.forEach(value => {
//         columns.push(value[title0Index] || value[title1Index] || value[title2Index])
//         let field = value[fieldIndex].split('.')
//         field = field[field.length - 1].toString().toUpperCase()
//         fields.push(field)
//         fieldsIndex.push(Fields.findIndex(f => f === field))
//       })
//       Values.forEach(value => {
//         list.push(fieldsIndex.map(index => value[index]))
//       })
//     }
//   }
//   return {
//     columns,
//     fields,
//     data: list,
//   }
// }
